package com.trex.modules.tbl.dao;

import java.time.LocalDateTime;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import com.jeesite.common.dao.CrudDao;
import com.jeesite.common.mybatis.annotation.MyBatisDao;
import com.trex.modules.tbl.entity.TblXdLjzyjl;
import com.trex.modules.tbl.lineform.entity.TblXdZxxdctzd;
import com.trex.modules.tbl.replyform.entity.TblXdJxchsd;
import net.sf.jsqlparser.expression.DateTimeLiteralExpression;
import org.apache.ibatis.annotations.Param;

/**
 * 列检作业记录DAO接口
 * @author jy
 * @version 2022-08-29
 */
@MyBatisDao
public interface TblXdLjzyjlDao extends CrudDao<TblXdLjzyjl> {
	public HashMap<String, Object> updateJCR(Map<String, Object> map);
	public HashMap<String, Object> updateJCROver(Map<String, Object> map);
	public HashMap<String, Object> cancel(Map<String, Object> map);
	public List<TblXdLjzyjl> findList(TblXdLjzyjl tblXdLjzyjl);
	public List<TblXdLjzyjl> findList1(TblXdLjzyjl tblXdLjzyjl);
	public List<TblXdLjzyjl> getLineListByStation(String stationCode,String userCode);
	public List<TblXdLjzyjl> getLineListByStation1(String stationCode,String userCode);


	void receiveData(@Param("recId")String recID,
					 @Param("typeCode") String typeCode,
					 @Param("wagonNum") int wagonNum,
					 @Param("lineCode") String lineCode,
					 @Param("line") String line,
					 @Param("shift")String shift,@Param("team") String team,@Param("stationUserCode") String stationUsercode,
					 @Param("stationUserName")String stationUsername,@Param("stationTime") String stationTime,
					 @Param("checkFlag") String checkFlag
					 );

	void recieveDataJc(@Param("uuId") String uuId,
					   @Param("recId")String recId,
					   @Param("wagonNum")Integer wagonNum,
					   @Param("status")String status,
					   @Param("wagonNo")String wagonNo,
					   @Param("deviceNo")String deviceNo,
					   @Param("wagonTypeCode")String wagonTypeCode,
					   @Param("wagonTypeName")String wagonTypeName,
					   @Param("wagonGroupCode")String wagonGroupCode,
					   @Param("stationCode")String stationCode,
					   @Param("station")String station,
					   @Param("areaCode")String areaCode,
					   @Param("area")String area,
					   @Param("yardNoCode")String yardNoCode,
					   @Param("yardNo")String yardNo,
					   @Param("lineCode")String lineCode,
					   @Param("line")String line,
					   @Param("sendStationCode")String sendStationCode,
					   @Param("sendStation")String sendStation,
					   @Param("arriveStationCode")String arriveStationCode,
					   @Param("arriveStation")String arriveStation,
					   @Param("isNopeak")String isNopeak,
					   @Param("ljzybh")String ljzybh,
					   @Param("stationTime") Date stationTime,
					   @Param("workStartTime") LocalDateTime workStartTime);

	void insertUser(String userId, String iIpAddr, LocalDateTime time);

	String selectUserData(String remoteHost);

	String selectJnrName(String jcrCode);


	List<Map<String, String>> getWagonList(String recId);

	List<TblXdJxchsd> getSelectById(String s);

    List<Map<String,String >> getCarStation(String stationCode, String userCode);

	TblXdZxxdctzd selectEntity(String tblXdZxxdctzd);

	String selectRepairLineCode(String repairLineName);

    int selectCheck(String checkFlag);

    List<TblXdLjzyjl> findListLog(TblXdLjzyjl tblXdLjzyjl);
}